The present invention relates to a transparent touch panel disposed over the display of a computer system. More particularly, it relates to an apparatus and method for constructing user generated touch activated keyboards for input of data at the main display of a computer system, most particularly, in an integrated operating environment.
The use of a touch input device at the display surface of a computer terminal is well known in the art. Human factor studies have shown that devices which allow the user to input data directly on the display of a computer, generally known in the art as touch display devices, achieve the greatest immediacy and accuracy between man and machine. Typically, an image of a menu is presented to the user by the display listing a set of available actions which may be taken by the data processing system will inform the data processing system. The user's touch on a sensor disposed over the display at or near designated areas will inform the data processing system which action to execute. Menu entries might include a command for execution, a graphical element for enlargement, movement or duplication or a data file for processing. Many of these touch driven menus have been used in special purpose computers such as, point-of-sale terminals, information kiosks, or to control equipment such as copiers.
Also known in the art are peripheral input devices called soft keyboards. In these devices, a touch input sensor with a number of physically defined keypads is disposed over a flat panel display. The display indicates the result of touching a given keypad to the user. For example, the letter "A" is displayed under the touch key which when touched will cause the touch device to input the electrical signals which the computer system will recognize as corresponding to the ascii character "a". These devices provide for modification by the user, each position may be associated with one of the ascii characters, or with some devices, might be associated with an entire string of command characters according to the user's preference. As the array of switches are fixed in position in the touch sensor, key placement on the associated display is somewhat limited. The soft keyboards are not used as the primary display of computer system, but are used as a substitute input device for the hard keyboard attached to the computer system. Thus, the soft keyboards do not provide the immediacy of the touch input devices disposed on the same main display which shows the users the results of their input.
One trend to improve the accessibility of sophisticated applications is through the use of integrated operating environments presenting a uniform graphical user interface. Examples of integrated operating environments include, Microsoft Windows (.TM.) or IBM Presentation Manager (.TM.). Through these environments, the uniform presentation of applications developed by disparate developers provides an aid to understanding how to manipulate applications which run in the environment. Further, they allow the computer system to run and display information from several individual application programs on the same display with each application program in its own window.
Most of the present applications and integrated operating environments accept input only from mouse or keyboard input devices, although it is envisioned that future applications and environments will accept input from touch input devices. However, the known touch means and methods provide only a partial solution to the marriage of touch input and an integrated operating environment. In the prior art, the touch activated menus are designed for a specific application, do not send input to other applications operating on a general purpose computer and are not modifiable by the user. Similar hard coded menus can be provided with the applications, the operating system and/or the integrated operating environment. The user of hard coded touch activated keyboard images such as a QUERTY keyboard for use with a word processing program or a numeric keypad have been suggested. However, it is unlikely that a finite set of menus and/or keyboards provided by the software designer will meet the requirements of all, or even most users of the computer system. New applications will also put additional demands on the soft keyboards provided with the integrated operating environment.
Limited user defined touch activated key areas have been proposed which recognize the desirability of allowing users to define the result of touching a given area of a touch sensor disposed over the main display. Usually, a region at the edge of the display is set aside for a key or set of keys with functions to be assigned by the user. This offers some flexibility to the user in adding new function to the system. As the key images are on the main display, the key areas provide more immediacy than a peripheral soft keyboard device. Further, at least one proposal would allow the user to create and delete key images anywhere on the screen. Yet these methods are not fully compatible with the highly mutable multi-window environment present in today's integrated environments. In the above techniques, the key images are fixed on the display, which limits the movement of application containing windows across the screen without covering the keys. With a large number of touch selections and application windows, this becomes nearly impossible. The ability of the user to create and delete touch keys anywhere on screen would seem to be an improvement. In practice, however, a user does not wish to create a keyboard image each time he moves or sizes a window. Further, it is difficult to create a keyboard image with a pleasing appearance, i.e. keys correctly placed and aligned in rows and columns, same key spacing, same size keys, etc. It is unlikely that a keyboard image can be effectively and pleasingly designed by hand in a reasonable period of time, particularly if it must be done each time an application window is relocated on the display.
It would be desirable to provide a means and method of enabling a computer user to develop his own customized touch activated keyboard compatible with the highly mutable display of an integrated operating environment. Assuming relatively low skills for a user, added to the lack of access to the source code of a commercially developed application program, no code writing should be necessary. The user designed keyboard should be compatible with all applications running in the environment.